package com.ruicar.afs.cloud.afscase.channel.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruicar.afs.cloud.afscase.channel.condition.AffiliationStatusCondition;
import com.ruicar.afs.cloud.afscase.channel.condition.BaseInfoTypeDTO;
import com.ruicar.afs.cloud.afscase.channel.entity.ChannelBaseInfo;
import com.ruicar.afs.cloud.afscase.channel.mapper.ChannelBusiInfoMapper;
import com.ruicar.afs.cloud.afscase.channel.service.ChannelBaseInfoService;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * <p>Description: </p>
 *
 * @author mingzhi
 * @version 1.0
 * @date create on 2020-6-9 14:17
 */
@Service
@AllArgsConstructor
@Data
@Slf4j
public class ChannelBaseInfoServiceImpl extends ServiceImpl<ChannelBusiInfoMapper, ChannelBaseInfo> implements ChannelBaseInfoService {
    @Override
    public List<ChannelBaseInfo> getBaseInfo(AffiliationStatusCondition affiliationStatusCondition) {
        return this.baseMapper.getChannelInfo(affiliationStatusCondition);
    }

    @Override
    public IPage<List<ChannelBaseInfo>> getBaseInfoPage(Page page, AffiliationStatusCondition affiliationStatusCondition) {
        return this.baseMapper.getChannelInfoPage(page, affiliationStatusCondition);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByType(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByType(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatus(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatus(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOtherAll(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOtherAll(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOwnAll(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOwnAll(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOnlyOwnAll(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOnlyOwnAll(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOnlyOwnType(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOnlyOwnType(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOnlyOtherAll(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOnlyOtherAll(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOnlyOtherType(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOnlyOtherType(dto);
    }

    @Override
    public List<ChannelBaseInfo> getBaseInfoByStatusOtherOnlyOwnOnly(BaseInfoTypeDTO dto) {
        return this.baseMapper.getBaseInfoByStatusOtherOnlyOwnOnly(dto);
    }
}
